|
Native POSIX Thread Library(NPTL)とは、POSIXスレッドを使ったプログラムをLinuxカーネル上で効率的に動作可能とするソフトウェア機能である。 評価結果によると、IA-32上で2秒間で10万スレッドを起動できる。同じ事を NPTL を使わないで行うと、約15分かかった〔Introducing the 2.6 Kernel LINUX Journal、2003年5月1日〕〔The Native POSIX Thread Library for Linux Red Hat, Inc. 2005年2月21日〕。 == 歴史 == Linuxカーネル 2.4 以前では、プロセスがスケジュール対象であり、スレッドはカーネルでは扱われていなかった。しかし、2.6 で clone() システムコールがサポートされ、アドレス空間を共有したプロセスのコピーを作成できるようになった。LinuxThreadsプロジェクトはこのシステムコールを使って、カーネルレベルのスレッドをサポートした(それ以前のLinuxでは、POSIXスレッドはユーザーランドで実装されていた)。しかし、POSIXに完全準拠するには問題が多く、特にシグナル制御、スケジューリング、プロセス間同期プリミティブに問題があった。LinuxThreads の改善には、カーネルサポートとスレッドライブラリの書き換えが必要であることは明らかであった。この要求を満たすべく、2つの競合するプロジェクトが開始された。NGPT(Next Generation POSIX Threads)はIBMを中心とするチームが行い、NPTL はレッドハットが行った。NGPT は2003年中ごろに中止となり、同じころ NPTL がリリースされた。 NPTL は Red Hat Linux 9 で最初にリリースされた。従来の Linux でのPOSIXスレッドは、プロセッサが空いていても使えないことがあり、Windows の方が実装としては優れているとされていた。レッドハットは NPTL がこの問題を解決したとJavaに関するウェブサイトの記事で主張した。 NPTL は Red Hat Enterprise Linux のバージョン3から搭載され、現在では GNU Cライブラリの一部となっている。 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「Native POSIX Thread Library」の詳細全文を読む スポンサード リンク
|